/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package thienphuc.patient.bo;

import java.util.Date;
import java.util.List;
import thienphuc.patient.dto.NhapThuoc;
import thienphuc.patient.dto.NhapThuocId;
import thienphuc.patient.dto.Thuoc;

/**
 *
 * @author QuocDat
 */
public interface NhapThuocBO {
    
    /**
     * Get all NhapThuoc
     * @return
     * @throws Exception 
     */
    List<NhapThuoc> getAll() throws Exception;
    
    /**
     * Get NhapThuoc by NhapThuocId
     * @param nhapThuocId
     * @return
     * @throws Exception 
     */
    NhapThuoc getById(NhapThuocId nhapThuocId) throws Exception;
    
    /**
     * Get NhapThuoc by Thuoc
     * @param thuoc
     * @return
     * @throws Exception 
     */
    List<NhapThuoc> getByThuoc(Thuoc thuoc) throws Exception;
    
    /**
     * Get NhapThuoc by NgayNhap
     * @param ngayNhapStart
     * @param ngayNhapEnd
     * @return
     * @throws Exception 
     */
    List<NhapThuoc> getByNgayNhap(Date ngayNhapStart, Date ngayNhapEnd) throws Exception;
    
    /**
     * Get NhapThuoc by TenCongTy
     * @param tenCongTy
     * @return
     * @throws Exception 
     */
    List<NhapThuoc> getByTenCongTy(String tenCongTy) throws Exception;
    
    /**
     * Insert NhapThuoc
     * @param nhapThuoc
     * @return
     * @throws Exception 
     */
    boolean insertNhapThuoc(NhapThuoc nhapThuoc) throws Exception;
    
    /**
     * Update NhapThuoc
     * @param nhapThuoc
     * @return
     * @throws Exception 
     */
    boolean updateNhapThuoc(NhapThuoc nhapThuoc) throws Exception;
}
